آموزش جامع DSA در پایتون + حل ۱۳۰ مسئله برتر لیتکد برای مصاحبه‌های MAANG - آخرین آپدیت

دانلود DSA In Python + Top 130 Leetcode Problems for MAANG [Video]

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: این دوره یک راهنمای جامع برای تسلط بر ساختار داده‌ها و الگوریتم‌ها (DSA) با زبان پایتون است و تمرکز ویژه‌ای بر حل بیش از ۱۳۰ مسئله لیتکد دارد که به طور معمول در مصاحبه‌های شرکت‌های بزرگ تکنولوژی (MAANG) پرسیده می‌شوند. شما از مفاهیم پایه مانند آرایه‌ها، لیست‌های پیوندی، پشته‌ها، صف‌ها و درخت‌ها شروع کرده و به مباحث پیشرفته‌ای چون برنامه‌نویسی پویا، گراف‌ها و هیپ‌ها خواهید رسید. هر مسئله گام‌به‌گام و از طریق جلسات کدنویسی زنده بررسی می‌شود تا فرآیند تفکر پشت هر راهکار را کاملاً درک کنید. همچنین یاد می‌گیرید که چگونه پیچیدگی زمانی و مکانی (Time and Space Complexity) را تحلیل کنید؛ مهارتی حیاتی برای بهینه‌سازی کدها در مصاحبه‌های فنی. این دوره تکنیک‌های مختلف حل مسئله مانند پنجره لغزان (Sliding Window)، دو اشاره‌گر (Two-Pointer)، جستجوی دودویی، بازگشتی و برنامه‌نویسی پویا را پوشش می‌دهد. دموهای کدنویسی زنده تضمین می‌کند که تجربه عملی و واقعی در بهینه‌سازی الگوریتم‌ها کسب کنید. در پایان این دوره، شما با درک عمیق از الگوریتم‌ها و ساختارهای داده، اعتماد به نفس لازم برای حل چالش‌های کدنویسی را خواهید داشت. این دوره برای تمامی سطوح طراحی شده و هم مفاهیم بنیادی و هم استراتژی‌های پیشرفته را برای موفقیت در مصاحبه‌های شغلی ارائه می‌دهد. - تسلط بر مفاهیم اصلی DSA با پایتون برای مصاحبه‌های کدنویسی - حل ۱۳۰ مسئله برتر لیتکد که توسط شرکت‌های MAANG پرسیده می‌شوند - درک پیچیدگی زمانی و مکانی و بهینه‌سازی راهکارها - پیاده‌سازی زنده الگوریتم‌ها و رفع خطا در لحظه - به‌کارگیری تکنیک‌های پیشرفته حل مسئله در چالش‌های کدنویسی - کسب بینش در مورد رویکردهای خاص حل مسئله در مصاحبه‌های فنی این دوره برای افرادی که برای مصاحبه‌های کدنویسی در شرکت‌های برتر تکنولوژی آماده می‌شوند ایده‌آل است. چه مبتدی باشید و چه به دنبال تقویت مهارت‌های خود، این دوره مسیری جامع برای تسلط بر مفاهیم DSA و چالش‌های لیتکد ارائه می‌دهد. داشتن دانش پایه از برنامه‌نویسی پایتون توصیه می‌شود، اما حتی اگر با DSA آشنا نیستید، این دوره شما را از مفاهیم ابتدایی هدایت می‌کند. - یادگیری حل بیش از ۱۳۰ مسئله لیتکد با پایتون و تمرکز بر پیاده‌سازی عملی - کسب دانش عمیق در DSA و بهینه‌سازی الگوریتم‌ها از نظر زمان و حافظه - یادگیری عملی از طریق نمونه‌های کد و دموهای پیاده‌سازی واقعی

سرفصل ها و درس ها

مقدمه دوره Course Introduction

  • چگونه مهارت‌های حل مسئله را بهبود ببخشیم؟ How to Improve Problem-Solving Skills?

  • چگونه سریع‌تر کدنویسی کنیم؟ How to Code Fast!

  • چگونه در مصاحبه DSA موفق شویم؟ How to Ace Your DSA Interview?

  • چگونه کار با لیتکد را شروع کنیم؟ How to Get Started with Leetcode?

پیچیدگی زمانی و مکانی Time & Space Complexity

  • مقدمه‌ای بر پیچیدگی زمانی و مکانی Introduction to Time & Space Complexity

  • نماد Big O چیست؟ What Is Big O Notation

  • بررسی پذیرفتنی بودن Big O در مصاحبه‌ها Checking if Big-O Notation Is Acceptable in Interviews

  • محاسبه پیچیدگی زمانی - بخش اول Calculating Time Complexity Part 1

  • محاسبه پیچیدگی زمانی - بخش دوم Calculating Time Complexity Part 2

  • باورهای غلط درباره پیچیدگی زمانی Myths About Time Complexity

  • محاسبه پیچیدگی زمانی الگوریتم‌های بازگشتی Calculating Time Complexity of Recursive Algorithm

  • مثال دوم پیچیدگی زمانی بازگشتی Recursion Time Complexity Example 2

  • مقدمه‌ای بر پیچیدگی مکانی Introduction to Space Complexity

  • مثال پیچیدگی مکانی ۱ Space Complexity Example 1

  • مثال پیچیدگی مکانی ۲ Space Complexity Example 2

آرایه‌ها و لیست‌ها در پایتون Arrays & Lists in Python

  • آرایه‌ها چیستند و چرا سریع هستند؟ What Are Arrays and Why Are They So Fast?

  • برخی از نقاط ضعف استفاده از آرایه‌ها What Are Some Drawbacks of Using Arrays

  • آرایه‌های تغییرپذیر چگونه کار می‌کنند؟ How Do Resizable Arrays Work?

  • استفاده از لیست‌ها در پایتون Using Lists in Python

  • عملگرهای پیشرفته لیست - بخش اول Advanced List Operators - Part 1

  • عملگرهای پیشرفته لیست - بخش دوم Advanced List Operators - Part 2

  • لیتکد ۴۸۵: بیشترین تعداد یک‌های متوالی Leetcode #485 - Max Consecutive Ones - Python

  • لیتکد ۱۲۱: بهترین زمان برای خرید و فروش سهام Leetcode #121 - Best Time to Buy and Sell Stock - Python

  • لیتکد ۲۳۸: حاصل‌ضرب آرایه به جز خود عنصر Leetcode #238 - Product of Array Except Self - Python

  • لیتکد ۱۸۹: چرخش آرایه Leetcode #189 - Rotate Array - Python

  • لیتکد ۵۳: حداکثر مجموع زیرآرایه Leetcode #53 - Maximum Sum Subarray - Python

  • لیتکد ۱۵۲: حداکثر حاصل‌ضرب زیرآرایه Leetcode #152 - Maximum Product Subarray - Python

  • لیتکد ۳۶: سودوکو معتبر Leetcode #36 - Valid Sudoku - Python

مرتب‌سازی Sorting

  • چرا مرتب‌سازی مهم است؟ Why Is Sorting Important?

  • مقدمه‌ای بر مرتب‌سازی Introduction to Sorting

  • تئوری مرتب‌سازی حبابی (Bubble Sort) Bubble Sort Theory

  • پیاده‌سازی مرتب‌سازی حبابی Bubble Sort Implementation

  • تئوری مرتب‌سازی انتخابی (Selection Sort) Selection Sort Theory

  • پیاده‌سازی مرتب‌سازی انتخابی Selection Sort Implementation

  • تئوری مرتب‌سازی درجاتی (Insertion Sort) Insertion Sort Theory

  • پیاده‌سازی مرتب‌سازی درجاتی Insertion Sort Implementation

  • مرتب‌سازی ادغامی بخش ۱: نحوه ادغام دو آرایه مرتب Merge Sort Part 1 - How to Merge Two Sorted Arrays

  • مرتب‌سازی ادغامی بخش ۲: پیاده‌سازی ادغام دو آرایه مرتب Merge Sort Part 2 - Merge Two Sorted Arrays Implementation

  • مرتب‌سازی ادغامی بخش ۳: تئوری مرتب‌سازی ادغامی Merge Sort Part 3 - Merge Sort Theory

  • مرتب‌سازی ادغامی بخش ۴: پیاده‌سازی Merge Sort Part 4 - Implementation

  • مرتب‌سازی سریع بخش ۱: تئوری الگوریتم تقسیم‌بندی (Partitioning) Quick Sort Part 1 - Partitioning Algorithm Theory

  • مرتب‌سازی سریع بخش ۲: پیاده‌سازی الگوریتم تقسیم‌بندی Quick Sort Part 2 - Partitioning Algorithm Implementation

  • مرتب‌سازی سریع بخش ۳: درک نحوه عملکرد Quick Sort Quick Sort Part 3 - Understanding How Quick Sort Works

  • مرتب‌سازی سریع بخش ۴: پیاده‌سازی Quick Sort Quick Sort Part 4 - Quick Sort Implementation

  • مرتب‌سازی شمارشی بخش ۱: نحوه عملکرد و اهمیت آن Counting Sort Part 1 - How Does Counting Sort Work and Its Importance

  • مرتب‌سازی شمارشی بخش ۲: پیاده‌سازی Counting Sort Part 2 - Implementation

  • لیتکد ۲۸۳: انتقال صفرها Leetcode #283 - Move Zeroes - Python

  • لیتکد ۱۶۹: عنصر اکثریت Leetcode #169 - Majority Element - Python

  • لیتکد ۷۵: مرتب‌سازی رنگ‌ها Leetcode #75 - Sort Colors - Python

لیست‌های پیوندی Linked Lists

  • نقاط ضعف آرایه‌ها Drawback of Arrays

  • لیست پیوندی چیست؟ What Is Linked List

  • پیاده‌سازی پایه لیست پیوندی Linked List Basic Implementation

  • لیست پیوندی: درج در ابتدا Linked List - Insert at Top

  • لیست پیوندی: درج در انتها Linked List - Insert at End

  • لیست پیوندی: درج در وسط Linked List - Insert in Middle

  • لیست پیوندی: حذف از ابتدا Linked List - Delete at Top

  • لیست پیوندی: حذف از انتها - بخش اول Linked List - Delete at End Part 1

  • لیست پیوندی: حذف از انتها - بخش دوم Linked List - Delete at End Part 2

  • مسئله کاربردی ۱: تلاقی دو لیست پیوندی Practice Problem 1 - Intersection of Two Linked Lists

  • مسئله کاربردی ۲: ادغام دو لیست مرتب Practice Problem 2 - Merge Two Sorted Lists

  • مسئله کاربردی ۳: چرخه در لیست پیوندی Practice Problem 3 - Linked List Cycle

  • مسئله کاربردی ۴: معکوس کردن لیست پیوندی Practice Problem 4 - Reverse Linked List

  • مسئله کاربردی ۵: لیست پیوندی پالیندروم Practice Problem 5 - Palindrome Linked List

  • مسئله کاربردی ۶: چرخه در لیست پیوندی ۲ Practice Problem 6 - Linked List Cycle II

  • مسئله کاربردی ۷: یافتن نقطه وسط لیست پیوندی Practice Problem 7 - Find Middle of the Linked List

  • مسئله کاربردی ۸: جمع دو عدد Practice Problem 8 - Add Two Numbers

  • مسئله کاربردی ۹: حذف n-امین گره از انتهای لیست Practice Problem 9 - Remove Nth Node from End of List

حل تداخل در جدول هش Hash Table Collision Resolution

  • مقدمه‌ای بر جدول هش (Hash Table) Introduction to Hash Table

  • جدول هش چگونه کار می‌کند؟ How Does Hash Table Work

  • حل تداخل در جدول هش Hash Table Collision Resolution

  • انواع جداول هش Types of Hash Tables

  • جدول هش بدون ترتیب در پایتون Unordered Hash Table in Python

  • جدول هش مرتب در پایتون Ordered Hash Table in Python

  • مسئله کاربردی ۱: بررسی وجود تکرار Practice Problem 1 - Contains Duplicate

  • مسئله کاربردی ۲: گروه‌بندی آناگرام‌ها Practice Problem 2 - Group Anagrams

  • مسئله کاربردی ۳: مجموع دو عدد (Two Sum) Practice Problem 3 - Two Sum

  • مسئله کاربردی ۴: مجموع سه عدد (Three Sum) Practice Problem 4 - Three Sum

  • مسئله کاربردی ۵: طولانی‌ترین توالی متوالی Practice Problem 5 - Longest Consecutive Sequence

تئوری پشته و مسائل کاربردی Stacks Theory + Practice Problems

  • مقدمه‌ای بر پشته‌ها (Stacks) Introduction to Stacks

  • استفاده از پشته در پایتون - بخش اول Using Stacks in Python Part 1

  • استفاده از پشته در پایتون - بخش دوم Using Stacks in Python Part 2

  • مسئله کاربردی ۱: پرانتزهای معتبر Practice Problem 1 - Valid Parenthesis

  • مسئله کاربردی ۲: ارزیابی نمادگذاری معکوس پولیش Practice Problem 2 - Evaluate Reverse Polish Notation

  • مسئله کاربردی ۳: کمترین پشته (Min Stack) Practice Problem 3 - Min Stack

  • مسئله کاربردی ۴: عنصر بزرگتر بعدی ۲ Practice Problem 4 - Next Greater Element II

  • مسئله کاربردی ۵: ادغام بازه‌ها Practice Problem 5 - Merge Intervals

صف Queue

  • مقدمه‌ای بر صف (Queue) Introduction to Queue

  • صف چگونه پیاده‌سازی می‌شود؟ How Is Queue Implemented?

  • استفاده از Deque به عنوان صف در پایتون Using Deque as a Queue in Python

الگوی آرایه ۱: تئوری متد پنجره لغزان و مسائل کاربردی Array Pattern #1 - Sliding Window Method Theory + Practice Problems

  • مسئله کاربردی ۱: طولانی‌ترین زیررشته بدون کاراکتر تکراری Practice Problem 1 - Longest Substring Without Repeating Characters

  • لیتکد ۲۳۹: حداکثر پنجره لغزان Leetcode #239 - Sliding Window Maximum - Python

الگوی آرایه ۲: تئوری متد دو اشاره‌گر و مسائل کاربردی Array Pattern #2 - Two Pointer Method Theory + Practice Problems

  • لیتکد ۱۶۷: مجموع دو عدد ۲ (آرایه ورودی مرتب است) Leetcode #167 - Two Sum II Input Array Is Sorted - Python

  • لیتکد ۴۲: به دام انداختن آب باران Leetcode #42 - Trapping Rain Water - Python

الگوی آرایه ۳: مسائل کاربردی ریاضی و هندسه Array Pattern #3 - Math & Geometry Practice Problems

  • لیتکد ۷۳: صفر کردن ماتریس Leetcode #73 - Set Matrix Zeroes - Python

  • لیتکد ۵۴: ماتریس مارپیچی Leetcode #54 - Spiral Matrix - Python

جستجوی دودویی Binary Search

  • مقدمه‌ای بر جستجوی دودویی Introduction to Binary Search

  • پیاده‌سازی جستجوی دودویی Binary Search Implementation

الگوی جستجوی دودویی ۱: جستجو در آرایه‌های مرتب Binary Search Pattern #1 - Binary Search Over Sorted Arrays

  • لیتکد ۳۴: یافتن اولین و آخرین موقعیت عنصر در آرایه مرتب Leetcode #34 - Find First and Last Position of Element in Sorted Array - Python

  • لیتکد ۱۵۳: یافتن کمترین مقدار در آرایه مرتب چرخانده شده Leetcode #153 - Find Minimum in Rotated Sorted Array - Python

  • لیتکد ۳۳: جستجو در آرایه مرتب چرخانده شده Leetcode #33 - Search in a Rotated Sorted Array - Python

  • لیتکد ۳۵: جستجوی موقعیت درج Leetcode #35 - Search Insert Position - Python

الگوی جستجوی دودویی ۲: جستجو در یک بازه Binary Search Pattern #2 - Binary Search Over Range

  • لیتکد ۸۷۵: کوکو در حال خوردن موزها Leetcode #875 - Koko Eating Bananas - Python

  • لیتکد ۱۵۵۲: نیروی مغناطیسی بین دو توپ Leetcode #1552 - Magnetic Force Between Two Balls - Python

درخت‌های دودویی Binary Trees

  • مقدمه‌ای بر درخت‌های دودویی Introduction to Binary Trees

  • اصطلاحات مرتبط با درخت‌ها Terms Related to Trees

  • پیمایش درخت - بخش اول Tree Traversal Part 1

  • پیمایش درخت - بخش دوم Tree Traversal Part 2

  • لیتکد ۹۴: پیمایش میان‌روب (InOrder) درخت دودویی Leetcode #94 - Binary Tree InOrder Traversal - Python

  • لیتکد ۱۰۲: پیمایش سطح به سطح درخت دودویی Leetcode #102 - Binary Tree Level Order Traversal - Python

  • لیتکد ۱۰۰: درخت یکسان Leetcode #100 - Same Tree - Python

  • لیتکد ۱۰۱: درخت متقارن Leetcode #101 - Symmetric Tree - Python

  • لیتکد ۵۷۲: زیردرخت از یک درخت دیگر Leetcode #572 - Subtree of Another Tree - Python

  • لیتکد ۱۰۴: حداکثر عمق درخت دودویی Leetcode #104 - Maximum Depth of Binary Tree - Python

  • لیتکد ۱۱۰: درخت دودویی متوازن Leetcode #110 - Balanced Binary Tree - Python

  • لیتکد ۵۴۳: قطر یک درخت دودویی Leetcode #543 - Diameter of a Binary Tree - Python

  • لیتکد ۹۹۳: پسرعموها در درخت دودویی Leetcode #993 - Cousins in Binary Tree - Python

  • لیتکد ۱۱۲: مجموع مسیر Leetcode #112 - Path Sum - Python

  • لیتکد ۱۱۳: مجموع مسیر ۲ Leetcode #113 - Path Sum II - Python

  • لیتکد ۱۴۴۸: شمارش گره‌های خوب در درخت دودویی Leetcode #1448 - Count Good Nodes in Binary Tree - Python

  • لیتکد ۱۱۶۱: حداکثر مجموع سطح در درخت دودویی Leetcode #1161 - Maximum Level Sum of Binary Tree - Python

  • لیتکد ۴۰۴: مجموع برگ‌های چپ Leetcode #404 - Sum of Left Leaves - Python

  • لیتکد ۱۹۹: نمای سمت راست درخت دودویی Leetcode #199 - Binary Tree Right Side View - Python

  • لیتکد ۲۲۶: معکوس کردن درخت دودویی Leetcode #226 - Invert Binary Tree - Python

  • لیتکد ۱۰۵: ساخت درخت دودویی از پیمایش‌های PreOrder و InOrder Leetcode #105 - Construct Binary Tree from PreOrder and InOrder Traversal - Python

تئوری هیپ و مسائل کاربردی Heaps Theory + Practice Problems

  • مقدمه‌ای بر هیپ‌ها (Heaps) Introduction to Heaps

  • پیاده‌سازی هیپ‌ها Implementation of Heaps

  • درج در هیپ Insertion in Heaps

  • پیاده‌سازی درج در هیپ Heap Insertion Implementation

  • حذف در هیپ Deletion in Heaps

  • عملیات Heapify Heapify

  • مسئله کاربردی ۱: k-امین بزرگترین عنصر در آرایه Practice Problem 1 - Kth Largest Element in an Array

  • مسئله کاربردی ۲: یافتن میانه از جریان داده Practice Problem 2 - Find Median from Data Stream

  • مسئله کاربردی ۳: k-امین بزرگترین عنصر در جریان داده Practice Problem 3 - Kth Largest Element in Stream

درخت جستجوی دودویی (BST) Binary Search Tree

  • مقدمه‌ای بر درخت جستجوی دودویی (BST) Introduction to Binary Search Tree

  • BST با ارتفاع متوازن Height Balanced BST

  • درج گره جدید در درخت جستجوی دودویی Inserting a New Node in Binary Search Tree

  • جانشین و پیش‌روب Inorder در BST Inorder Successor and Predecessor in BST

  • حذف گره موجود از درخت جستجوی دودویی Deleting an Existing Node from Binary Search Tree

  • لیتکد ۲۳۰: k-امین کوچکترین عنصر در BST Leetcode #230 - Kth Smallest Element in BST - Python

  • لیتکد ۹۸: اعتبارسنجی درخت جستجوی دودویی Leetcode #98 - Validate Binary Search Tree - Python

  • لیتکد ۲۳۵: پایین‌ترین جد مشترک در یک BST Leetcode #235 - Lowest Common Ancestor of a Binary Search Tree - Python

برنامه‌نویسی پویا (Dynamic Programming) Dynamic Programming

  • مقدمه‌ای بر برنامه‌نویسی پویا Introduction to Dynamic Programming

  • مسئله کاربردی ۲: بازی پرش Practice Problem 2 - Jump Game

  • مسئله کاربردی ۳: تعویض سکه Practice Problem 3 - Coin Change

  • مسئله کاربردی ۴: مجموع هدف Practice Problem 4 - Target Sum

  • مسئله کاربردی ۵: طولانی‌ترین زیرتوالی مشترک Practice Problem 5 - Longest Common Subsequence

  • مسئله کاربردی ۶: سارق خانه Practice Problem 6 - House Robber

  • مسئله کاربردی ۷: طولانی‌ترین زیرتوالی افزایشی Practice Problem 7 - Longest Increasing Subsequence

  • مسئله کاربردی ۸: تقسیم مجموع زیرمجموعه برابر Practice Problem 8 - Partition Equal Subset Sum

  • مسئله کاربردی ۹: ماتریس ۰ و ۱ Practice Problem 9 - 0-1 Matrix

  • مسئله کاربردی ۱۰: جایگزینی عدد صحیح Practice Problem 10 - Integer Replacement

  • مسئله کاربردی ۱۱: رمزگشایی روش‌ها Practice Problem 11 - Decode Ways

  • مسئله کاربردی ۱۳: حداقل هزینه بالا رفتن از پله‌ها Practice Problem 13 - Min Cost Climbing Stairs

  • مسئله کاربردی ۱۴: طولانی‌ترین زیررشته پالیندروم Practice Problem 14 - Longest Palindromic Substring

ساختار داده مجموعه مجزا و الگوریتم‌های Union Find Disjoint Set Data Structure and Union Find Algorithms

  • مقدمه‌ای بر ساختار داده مجموعه مجزا Introduction to Disjoint Set Data Structure

  • درک ساختار داده مجموعه مجزا Understanding Disjoint Set Data Structure

  • بهینه‌سازی Union by Rank Union by Rank Optimization

  • پیاده‌سازی پایتونی ساختار داده مجموعه مجزا Disjoint Set Data Structure Python Implementation

  • بهینه‌سازی فشرده‌سازی مسیر (Path Compression) Path Compression Optimization

  • پیاده‌سازی بهینه‌سازی فشرده‌سازی مسیر Path Compression Optimization Implementation

گراف‌ها Graphs

  • گراف‌ها چیستند؟ What Are Graphs?

  • گراف‌های جهت‌دار در مقابل بدون جهت Directed vs. Undirected Graphs

  • گراف‌های وزن‌دار در مقابل بدون وزن Weighted vs. Unweighted Graphs

  • اصطلاحات گراف - بخش اول Terms of Graphs Part 1

  • انواع گراف - بخش اول Types of Graphs Part 1

  • انواع گراف - بخش دوم Types of Graphs Part 2

  • پیاده‌سازی گراف - بخش اول Implementing Graphs Part 1

  • پیاده‌سازی گراف - بخش دوم Implementing Graphs Part 2

  • پیاده‌سازی گراف - بخش سوم Implementing Graphs Part 3

  • پیاده‌سازی ماتریس مجاورت Adjacency Matrix Implementation

  • پیاده‌سازی لیست مجاورت Adjacency List Implementation

  • مقدمه‌ای بر پیمایش‌ها Introduction to Traversals

  • نحوه عملکرد BFS BFS Working

  • پیاده‌سازی BFS BFS Implementation

  • ویژگی اول BFS BFS Property #1

  • BFS روی گراف‌های وزن‌دار دودویی BFS Over Binary Weighted Graphs

  • مقدمه‌ای بر DFS Introduction to DFS

  • پیاده‌سازی تکرار شونده DFS DFS Iterative Implementation

  • پیاده‌سازی بازگشتی DFS DFS Recursive Implementation

  • ویژگی‌های مهم DFS DFS Important Properties

  • تشخیص چرخه - بخش اول Cycle Detection Part 1

  • تشخیص چرخه - بخش دوم Cycle Detection Part 2

  • تشخیص چرخه - بخش سوم Cycle Detection Part 3

  • پیاده‌سازی تشخیص چرخه Cycle Detection Implementation

  • مرتب‌سازی توپولوژیک چیست؟ What Is Topological Sorting?

  • مثال مرتب‌سازی توپولوژیک ۱ Topological Sorting Example #1

  • مسئله کوتاه‌ترین مسیر تک‌منبعی Single Source Shortest Path Problem

  • الگوریتم دایکسترا Dijkstra's Algorithm

  • پیاده‌سازی الگوریتم دایکسترا Dijkstra's Algorithm Implementation

  • مقدمه‌ای بر الگوریتم بلمن-فورد Introduction to Bellman-Ford Algorithm

  • نحوه عملکرد الگوریتم بلمن-فورد Bellman-Ford Algorithm Working

  • پیاده‌سازی الگوریتم بلمن-فورد Bellman-Ford Algorithm Implementation

  • مقدمه‌ای بر درخت پوشای کمینه (MST) Introduction to Minimum Spanning Tree

  • الگوریتم پرایم Prim's Algorithm

  • پیاده‌سازی الگوریتم پرایم Prim's Algorithm Implementation

  • مسئله کاربردی ۱: یافتن قاضی شهر Practice Problem 1 - Find the Town Judge

  • مسئله کاربردی ۱: زمان‌بندی دروس Practice Problem 1 - Course Schedule

  • مسئله کاربردی ۲: تعداد جزیره‌ها Practice Problem 2 - Number of Islands

  • مسئله کاربردی ۴: مناطق محاصره شده Practice Problem 4 - Surrounded Regions

  • مسئله کاربردی ۵: تعداد محاصره‌ها Practice Problem 5 - Number of Enclaves

  • مسئله کاربردی ۶: زمان تأخیر شبکه Practice Problem 6 - Network Delay Time

  • مسئله کاربردی ۷: پر کردن رنگ (Flood Fill) Practice Problem 7 - Flood Fill

دستکاری بیت‌ها Bit Manipulation

  • مقدمه‌ای بر عملگرهای بیتی Introduction to Bitwise Operators

  • عملگرهای بیتی رایج Common Bitwise Operators

  • لیتکد ۱۳۶: عدد تک Leetcode #136 - Single Number - Python

  • لیتکد ۳۳۸: شمارش بیت‌ها Leetcode #338 - Counting Bits - Python

  • لیتکد ۲۸۷: یافتن عدد تکراری Leetcode #287 - Find the Duplicate Number - Python

  • لیتکد ۲۹: تقسیم دو عدد صحیح Leetcode #29 - Divide Two Integers - Python

  • لیتکد ۲۶۸: عدد گم شده Leetcode #268 - Missing Number - Python

  • لیتکد ۱۹۱: تعداد بیت‌های ۱ Leetcode #191 - Number of 1 Bits - Python

  • لیتکد ۷: معکوس کردن عدد صحیح Leetcode #7 - Reverse Integer - Python

بازگشت و پس‌گشت (Recursion & Backtracking) Recursion & Backtracking

  • مقدمه‌ای بر پس‌گشت (Backtracking) Introduction to Backtracking

  • مثال پس‌گشت Backtracking Example

  • لیتکد ۳۹: مجموع ترکیبی Leetcode #39 - Combination Sum - Python

  • لیتکد ۷۸: زیرمجموعه‌ها Leetcode #78 - Subsets - Python

  • لیتکد ۵۱: مسئله N-ملکه Leetcode #51 - N Queens - Python

رشته‌ها Strings

  • مسئله کاربردی ۱: حداقل افزودنی برای معتبر کردن پرانتزها Practice Problem 1 - Minimum Add to Make Parenthesis Valid

  • مسئله کاربردی ۲: گروه‌بندی آناگرام‌ها Practice Problem 2 - Group Anagrams

ساختارهای داده پیشرفته: درخت قطعه‌ای (Segment Tree) Advanced Data Structures - Segment Tree

  • مقدمه‌ای بر مسئله پرس‌وجوی مجموع بازه Introduction to Range Sum Query Problem

  • مقدمه‌ای بر درخت قطعه‌ای: ساخت یک درخت قطعه‌ای Introduction to Segment Tree - Building a Segment Tree

  • پاسخ به پرس‌وجوها با استفاده از درخت قطعه‌ای Answering Queries Using Segment Tree

  • به‌روزرسانی مقادیر در درخت قطعه‌ای Segment Tree Updating Values

  • پیاده‌سازی تابع ساخت درخت قطعه‌ای Segment Tree Build Function Implementation

  • پیاده‌سازی تابع پرس‌وجوی درخت قطعه‌ای Segment Tree Query Function Implementation

  • پیاده‌سازی تابع به‌روزرسانی درخت قطعه‌ای Segment Tree Update Function Implementation

نمایش نظرات

آموزش جامع DSA در پایتون + حل ۱۳۰ مسئله برتر لیتکد برای مصاحبه‌های MAANG
جزییات دوره
32h 30m
225
Packtpub Packtpub
(آخرین آپدیت)
از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Pratik Singhal Pratik Singhal

مهندس ارشد نرم افزار در آمازون